Communication networks, such as those used to deliver telecommunications, to interconnect computers, and the like, may include any number of nodes. The networks may deliver electronic communications between two points by routing the communications from node to node within the network. As the number of nodes in a network increases and as the number of communication paths available to each network node increases, the number of potential paths available for delivering any single communication likewise increases. Accordingly, the problem of selecting an appropriate path through the network arises. Typically, a network attempts to select the shortest possible path to minimize delay, to consume a minimal amount of network resources, and to maximize reliability in delivering a communication. At the same time, a network needs to balance this concern with a need to prevent communication traffic bottlenecks and a need to achieve the highest possible probability that a communication will be delivered to its intended destination. Routing becomes increasing more difficult when the position of the nodes is changing and where the data handling capacity of the links varies.
Thus, what is needed are a routing method and apparatus which achieves uniform network link usage while limiting number of hops on each path. What is also needed are a method and apparatus that achieves uniform link usage while minimizes the aggregate link traffic load as much as possible. What is also needed are a method and apparatus for routing packets among nodes in a communication system coupled by links that have different data handling capacities. What is also needed are a method and apparatus for routing data packets that achieves uniformity in the usage of network links considering the capacities of the links.
What is needed are a method and apparatus of routing data packets among nodes in a communication system where the nodes are moving with respect to each other, and where the connections or links between the nodes are changing as a function of the position of the node. What is also needed are a routing apparatus and method that computes routes in advance for use by the nodes in real-time. What is also needed are a method and apparatus for routing that minimizes packet transport delays or keeps packet transport delays below an acceptable limit.